package org.br.erp.base.entity;

import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import java.io.UnsupportedEncodingException;

/**
 * @Description: 物料清单分录
 * @Author: jeecg-boot
 * @Date:   2022-11-30
 * @Version: V1.0
 */
@ApiModel(value="scmbillofmaterialitem对象", description="物料清单分录")
@Data
@TableName("scmbillofmaterialitem")
@Entity
public class Scmbillofmaterialitem implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    @Id
    private java.lang.String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private java.util.Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private java.lang.String sysOrgCode;
	/**行号*/
	@Excel(name = "行号", width = 15)
    @ApiModelProperty(value = "行号")
    private java.lang.String itemcode;
	/**物料*/
	@Excel(name = "物料", width = 15)
    @ApiModelProperty(value = "物料")
    private java.lang.String materialid;
	/**物料编号*/
	@Excel(name = "物料编号", width = 15)
    @ApiModelProperty(value = "物料编号")
    private java.lang.String materialcode;
	/**物料名称*/
	@Excel(name = "物料名称", width = 15)
    @ApiModelProperty(value = "物料名称")
    private java.lang.String materialname;

    @Column(length = 100)
    private String model;

    @Column(length = 100)
    private String mspecs;

	/**计量单位*/
	@Excel(name = "计量单位", width = 15)
    @ApiModelProperty(value = "计量单位")
    private java.lang.String uomid;
	/**parentid*/
    @ApiModelProperty(value = "parentid")
    private java.lang.String parentid;

    //供应类型
    @Column(length = 100)
    private String suppletype;

    //子项类型
    //标准件/返还件/替代件
    @Column(length = 100)
    private String mchildtype;

    //用量类型 变动还是固定
    @Column(length = 100)
    private String yltype;

    //分子用量
    @Column(precision = 38,scale = 20)
    private BigDecimal fzqty;
    //分母用量
    @Column(precision = 28,scale = 8)
    private BigDecimal fmqty;

    //固定损耗量
    @Column(precision = 28,scale = 8)
    private BigDecimal gdshl;

    //变动损耗率
    @Column(precision = 28,scale = 8)
    private BigDecimal bdshl;

    @Column(length = 32)
    private String suppleorgid;

    @Column(length = 32)
    private String childBomId;
}
